package com.lotom.lotom_after.controller;

import com.github.pagehelper.PageInfo;
import com.lotom.lotom_after.entity.Task;
import com.lotom.lotom_after.service.TaskService;
import org.springframework.web.bind.annotation.*;

import javax.annotation.Resource;

/**
 * 成员任务表(Task)表控制层
 *
 * @author jkbobo
 * @since 2020-09-14 14:31:10
 */
@RestController
@RequestMapping("task")
public class TaskController {
    /**
     * 服务对象
     */
    @Resource
    private TaskService taskService;

    /**
     * 通过ID查询单条数据
     *
     * @param id 主键
     * @return 实例对象
     */
    @GetMapping("/queryById")
    public Task queryById(Integer id) {
        return this.taskService.queryById(id);
    }

    /**
     * 查询多条数据
     *
     * @param task 对象
     * @param offset 查询起始位置
     * @param limit  查询条数
     * @return
     */
    @PostMapping("/queryAllByLimit")
    public PageInfo<Task> queryAllByLimit(Task task,  int offset, int limit) {
        return this.taskService.queryAllByLimit(task, offset, limit);
    }

    /**
     * 新增数据
     *
     * @param task 实例对象
     * @return 实例对象
     */
    @PostMapping("/insert")
    public Task insert(Task task) {
        this.taskService.insert(task);
        return this.taskService.insert(task);
    }

    /**
     * 修改数据
     *
     * @param task 实例对象
     * @return 实例对象
     */
    @PostMapping("/update")
    public Task update(Task task) {
        return this.taskService.update(task);
    }

    /**
     * 通过主键删除数据
     *
     * @param id 主键
     * @return 是否成功
     */
    @GetMapping("/deleteById")
    public boolean deleteById(Integer id) {
        return this.taskService.deleteById(id);
    }

    /**
     * 批量删除
     *
     * @param array 主键
     * @return 是否成功
     */
    @GetMapping("/batchRemove")
    public boolean batchRemove(String array) {
        return this.taskService.batchRemove(array);
    }
}